This invention relates generally to optical readers in general and, in particular, to an optical reader configured to read fine print bar code symbols.
Bar code symbols are being employed in an ever-increasing number of applications, and the information requirements of such symbols are growing.
In recent years, there has been an increasing effort to encode large amounts of data into bar code symbols. New bar code symbol types, including 2d symbols such as stacked 1D and matrix symbols have become available which are specifically designed to increase the amount of data per area that can be encoded into a symbol.
In addition to utilizing new types of bar code symbols, users of bar code symbols have been printing such symbols in smaller sizes and in increasingly higher densities. The bar and space patterns of bar code symbols, whether 1D or 2D, are being printed and applied to items in increasingly finer prints.
The fine print of many bar code symbols in use today has resulted in an increase in the resolution requirements of optical reading devices which read such symbols. In the prior art, there has been suggested, in general, two approaches for addressing these increased resolution requirements.
The first approach suggested in the prior art for increasing reader resolution is to increase the pixel density of an image sensor used in an optical reader. This solution is highly effective performance-wise, but is also highly expensive. For purposes of illustrating the cost of increasing pixel density, a 1000 by 1000 pixel array sensor is currently approximately 8 times the cost of a 256 by 256 pixel array sensor. Incorporating a higher density pixel array into a reader also significantly increases data storage and data processing costs.
A second approach suggested by the prior art for increasing reader resolution is to adjust the reader optics so as to increase the magnification of captured scenes. This solution comes with the price of decreasing the area of the reader""s field of view, however.
There is a need for a low cost high performance optical reader which is capable of reading fine print bar code symbols which are finding increased use.
According to its major aspects and broadly stated, the present invention is a method for decoding fine print bar code symbols. The method includes certain image data processing steps which facilitate the reading of finer print symbols without requiring that the resolution of the reader be enhanced by altering hardware aspects of the reader.
In the present invention, a bar code reader captures an initial image map corresponding to a scene, then subjects the initial image map to an interpolation step wherein values for constructed pixels (pixel positionally intermediate between pixels of the initial image map) are interpolated as initial bit map are interpolated as a function of the initial image map pixel values bordering the constructed pixels.
After an interpolated image map is constructed, the interpolated image map is subjected to a binarization step wherein grey scale pixel values of the interpolated image map are converted into binary (1 or 0) pixel values by way of a thresholding process. In the thresholding process, grey scale pixel values are compared to a threshold (which may vary across the image) in the grey scale range, then set to 1 if they are above the threshold and set to 0 if below the threshold.
The pixel values of the resulting binarized interpolated image map are then analyzed to determine the identity of a message which may be encoded in any symbol which may be represented in the binarized interpolated bit map.
Interpolating constructed pixel values before binarizing the interpolated bit map decreases the amount of image information that would otherwise be lost by binarizing an initially captured bit map image directly as in a prior art decoding method.
These and other details, advantages and benefits of the present invention will become apparent from the detailed description of the preferred embodiment hereinbelow.